Platform Explorer / Nuxeo Platform 2023.9

Component org.nuxeo.runtime.migration.MigrationService

Documentation

The Migration service allows registration and access to migration configurations. A migration configuration contains different states and steps to migrate between these states.

Requirements

Resolution Order

816
The resolution order represents the order in which this component has been resolved by the Nuxeo Runtime framework.
You can influence this order by adding "require" tags in your component declaration, to make sure it is resolved after another component.

Start Order

12 (Declared Start Order: -490)
The start order represents the order in which this component has been started by the Nuxeo Runtime framework.
This number is interesting to tweak if your Java component interacts with other components, and needs to be started before or after another one.
It can be changed by implementing the method "Component#getApplicationStartedOrder()" on your Java component: components are sorted according to this reference value, in increasing order.
The default value is 1000, and the repository initialization uses number 100. Negative values can also be used.

Implementation

Class: org.nuxeo.runtime.migration.MigrationServiceImpl

Services

Extension Points

XML Source

<?xml version="1.0"?>
<component name="org.nuxeo.runtime.migration.MigrationService" version="1.0">

  <documentation>
    The Migration service allows registration and access to migration configurations.
    A migration configuration contains different states and steps to migrate between these states.
  </documentation>

  <require>org.nuxeo.runtime.kv.KeyValueService</require>

  <service>
    <provide interface="org.nuxeo.runtime.migration.MigrationService" />
  </service>

  <implementation class="org.nuxeo.runtime.migration.MigrationServiceImpl" />

  <extension-point name="configuration">
    <documentation>
      Defines migrations:
      <code>
        <migration id="my_migration">
          <description label="my_migration">My Migration</description>
          <state id="v1">
            <description label="my_migration.state.v1">Initial state</description>
          </state>
          ... other states ...

          <step id="first" fromState="v1" toState="v2">
            <description label="my_migration.step.first">First step of the migration, from v1 to v2</description>
            <class>my.class.Migratorv1v2</class>
          </step>
          ... other steps ...
        </migration>
      </code>
      The migrator class for each step must implement Runnable.
    </documentation>

    <object class="org.nuxeo.runtime.migration.MigrationDescriptor" />
  </extension-point>

</component>